import App from './App'
import { createSSRApp } from 'vue'
import api from './api'
import { config } from './utils/config.js'

// 初始化全局变量
const globalData = {
  isLogin: false,
  userInfo: null
}

// 创建应用实例
export function createApp() {
  const app = createSSRApp(App)
  
  // 全局挂载API
  app.config.globalProperties.$api = api
  
  // 全局挂载配置
  app.config.globalProperties.$config = config
  
  // 全局挂载数据
  app.config.globalProperties.$globalData = globalData
  
  // 全局错误处理
  app.config.errorHandler = (err, instance, info) => {
    console.error('全局错误:', err)
    console.error('错误信息:', info)
    
    // 仅在开发环境显示错误提示
    if (process.env.NODE_ENV === 'development') {
      uni.showToast({
        title: '应用发生错误，请查看控制台',
        icon: 'none',
        duration: 3000
      })
    }
  }
  
  return {
    app
  }
}